/*
 * (C) Copyright 2006-2010 Nuxeo SAS (http://nuxeo.com/) and contributors.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Lesser General Public License
 * (LGPL) version 2.1 which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/lgpl.html
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * Contributors:
 *     bstefanescu
 */
package org.nuxeo.gwt.habyt.app.client.form;

import java.util.ArrayList;
import java.util.List;

/**
 * @author <a href="mailto:bs@nuxeo.com">Bogdan Stefanescu</a>
 * 
 */
public class ValidationStatus {

    protected List<Entry> errors = new ArrayList<ValidationStatus.Entry>();

    public boolean isOk() {
        return errors.isEmpty();
    }

    public List<Entry> getErrors() {
        return errors;
    }

    public void addError(FormControl control, String message) {
        errors.add(new Entry(control, message));
    }

    public static class Entry {
        protected FormControl control;

        protected String message;

        Entry(FormControl control, String message) {
            this.control = control;
            this.message = message;
        }

        public FormControl getControl() {
            return control;
        }

        public String getMessage() {
            return message;
        }
    }
}
